Point size,computation and exposure control device for a character display apparatus

ABSTRACT

A CHARACTER MEMORY, INCLUDING SEVERAL FONTS OF CHARACTERS EACH OF A DIFFERNT POINT SIZE, SUPPLIES CHARACTERS GENERATING DATA TO FORM CHARACTERS ON AN ENERGY RESPONSIVE SURFACE, SUCH AS THE FACE OF A CATHODE-RAY TUVE, IN RESPONSE TO INSTRUCTIONS FROM A CONTROL RECORD. THE CONTROL RECORD SELECTS THE FONT AND THE CHARACTER WITHIN THE FONT TO BE DISPLAYED AND THE SIZE OF THE CHARACTER TO BE DISPLAYED INDEPENDENT OF ITS SIZE AS RECORDED IN THE MEMORY WITHIN THE SELECTED FONT. EACH CHARACTER IS FORMED BY MOVING A BEAM OF ENERGY TO A PLURALITY OF PREDETERMINED LOCATIONS RELATIVE TO EACH OTHER AND ENERGIZING THE BEAM FOR A PREDETERMINED DURATION ON THE ENERGY RESPONSIVE SURFACE TO FORM A SERIES OF SPOTS, AND EACH CHARACTER IS FORMED TO THE POINT SIZE REQUIRED BY THE CONTROL RECORD BY A CIRCUIT WHICH ANALYZES THE POINT SIZE OF THE CHARACTER STORED IN TEH CHARACTER MEMORY, COMPARES THIS INFORMATION WITH THE POINT SIZE OF THE CHARACTER TO BE DISPLAYED FROM THE CONTROL RECORD, AND PROVIDES A REFERENCE VOLTAGE TO THE CHARACTER GENERATOR TO CONTROL THE SPACING BETWEEN ADJACENT SPOTS. THUS, TYPSETTING CHARACTERS MAY BE DISPLAYED AT DIFFERENT SPEEDS AND OF DIFFERENT QUALITY, DEPENDING UPON THE USE FOR WHICH THE OUTPUT OF THE PHOTOTYPSETTING SYSTEM IS TO BE EMPLOYED. A CIRCUIT IS ALSO PROVIDED TO CONTROL THE DURATION OF THE SPOTS WHICH FORM THE CHARACTERS SO THAT THE CHARACTERS ARE ALL OF THE SAME DENSITY INDENPENDENT OF THE SIZE OF THE CHARACTER DISPLAYED OR THE POINT SIZE OF THE CHARACTER MEMORY SELECTED.

United States Patent [72] Inventors Edwin R. Kolb Prmzan bramrner-ThomasB Habecker University Heights; Assistant Lxamlner-DaVid L TraftonCharles H. Grace, Becksville. Ohio Armrnev-Yount & Farolli [21] Appl No710.351 [22] Filed Mar. 4, 1968 [45} Patented June 28, 1971 ABSTRACT: Acharacter memory. including several fonts of [73} Asslgnee Harris[um-type Corporation characters each of a different point size, suppliedcharacters Ckvelanm Ohio generating data to form characters on an energyresponsive surface, such as the face of a cathode-ray tube, in responseto instructions from a control record. The control record selects thefont and the character within the font to be displayed and the size ofthe character to be displayed independent of its size as recorded in thememory within the selected font. Each character is formed by moving abeam of energy to a plurality of predetermined locations relative toeach other and energiz- [54] m-r SIZEICOMPUTATION AND EXPOSURE ing thebeam for a predetermined duration on the energy CONTROL DEVICE FOR ACHARACTER DISPLAY responsive surface to form a series of spots, and eachAPPARATUS character is formed to the point size required by the control10 Claims 11 Drawing Figs I record by a circuit which analyzes the pointsize of the character stored in the character memory, compares this in-[52] U.S. Cl 340/324, formation h the point Size of the character to bedisplayed 95/43 I5/I8 from the control record, and provides a referencevoltage to [51] 1nt.Cl 01129/70 the character generator to control theSpacing between [50] Field Of Search 340/324. 1; jacent spots. Thus,typesettingcharacters may be displayed at 95/45 different speeds and ofdifferent quality, depending upon the use for which the output of thephototypesetting system is to References cued be employed. A circuit isalso provided to control the duration UNITED STATES PATENTS of the spotswhich form the characters so that the characters 3,267,454 8/1966 Schaaf340/324 are all of the same density independent of the size of the3,298,013 1/1967 Koster 340/324 character displayed or the point size ofthe character memory 3,423, 49 1/1969 Newcomb 340/324 selected.

READER CHARACTER IO 50 3O CHARACTER CHARACTER I MEMORY o GENERATINGGENERATING I I 52 SI HORIZONTAL D/A VERTICAL D/A I i 3 CHARACTER EECTION I5 cIRcurr 59 25 l ,63

BUFFER 2 c gem STORAGE CHARACTER a CONTROL GENERATOR I 43 i r- .1 35 I Jm'rsmzguno I I: r 66 i I r @1 3? La I 28;, REemER k .g I I oEcooER Itcmcurrs f 53 Y A r I I I nomzou. I l CHARACTER Accuu. r I SIZE I CIRCUITQ9 I MAJORHORIZONTAL l I 5322; VERTICAL gS' I I cmcurr scALE I IREGISTER I RULE 8 I MAJOR HORIZONTAL I I 49 GENERATOR 57 o/A LmEAR LL.L. 67

' PATENIED JUN28 I97! SHEET 1 OF 7 cIIARAcTER MEMoRY FIG-1 I5 ICHARACTER SELECTION cIRcuIT 2O l CHARACTER CHARACTER GENERATING SIGNALSSELECTION\ CHARACTER 2| 22 GENERATOR c o I o CIRCUIT auE ER oEcqoER I JCONTROL A cIRcuIT TAPE READER 3k 36 cIIARAcTER POSITIONING VERTICALSIGNALS AMPLIFIER BEAM CONTROL) IGNAL o g: 3 l l 2e W HORIZONTAL a IAMPLIFIER W "1 INVENTORS 1 EDWIN R.KOLB a CHARLES H. GRACE ATTORNEYS l lI lil II jinn I: A L X A W W V V V V START NORMALIZED PREDIPS HORIZONTALVERTICAL NUMBER CHARACTER CODE WIDTH POSITION POSITION OF GENERATINGPARITY SECTIONS DATA FIG-6 IIIZIII nnnn unnn 2 nonn nonn nnn. nnno nnn.nnno lnnn nnnno nnno nnnnn nnnn nnnnnn nnnn nnnnnnn nn n nonn annnn nu 0nnn nnnno c on:n a "I" nnn. 0 0 O 0 0 0 O n n nnn nnn nnnnno nn nnn '225222;: PW T PATENTED JUN28 8n SHEET 6 OF 7 mwzmo mo u o mobimzuw mwEuzoo 556mm 08 45.65 8 wmamomxw 09 mm w OI PATENTEU JUN28|97| SHEET 7 OF 7FIG 9A CHARACTER GENERATOR l ENTRY COMMAND NORMALIZED TO CHARACTERINTERPOLATION O/A WIDTH I05 IO? 60 REGISTER )1 HORIZONTAL TO MAJOR 2!"!1GATE ACCUMULATOR IIORIzONTAL NON-LINEAR HORIZONTAL O/A POINT SIZE MEMORY5 TO MAJOR T HORIZONTAL LINEAR DECODER \43 D/A FIG-9 B 20 CHARACTERGENERATOR I ENTRY COMMAND NORMALIZED 1 ,IO?

CHARACTER GATES WIDTH 05a REGISTER I 2 w A PARTIAL I AUXILIARY is f 9"CHARACTER I WIDTH SELECTOR SWITCH HORIZONTAL GATES POINT sIzE MEMORYHADDERS flue ADD COMMANDS DECODER/ HORIZONTAL 43 ACCUMULATOR POINT SIZE,COMPUTATHON AND EXPOSURE CONTROL DEVICE FOR A CHARACTER DISPLAYAPPARATUS RELATED APPLICATIONS Reference is hereby made to copending USapplications Ser. No. 59l,734, filed Nov. 3, 1966, entitled PHOTO-TYPESETTING SYSTEM; Ser. No. 710,349 filed on even dateherewith,'entitled PHOTOTYPESETTING METHOD AND APPARATUS; and Serial No.710,350, filed on even date herewith, entitled PHOTOTYPESE'I'IING AP-PARATUS.

BACKGROUND OF THE INVENTION Characters may be formed on an energyresponsive surface, such as a cathode-ray tube, by moving a beam ofenergy from spot to spot and energizing that beam only at those spotswhich form part of the character to be displayed. Characters of thesmallest point size font within the memory are formed from a fewernumber of spots than the characters in the largest point size font,however, the spacing between the spots forming characters in these twofonts are usually spaced the same distance apart. 4

As a practical matter, the character memory is provided with five fonts,each of a different point size. Since only a limited number of fonts ofcharacters are available from the character memory, some provisions mustbe made to interpolate between the stored point sizes to give aphototypesetting apparatus its full utility. Also, it may be desirableto use the characters from a smallest point size font to provide proofcopies of the printing since the character generation speed is increaseddue to the reduced number of spots forming the character and since thequality of the character displayed is of secondary importance. Forsubsequent printouts from the phototypesetting apparatus which are to beused in the production runs, the font having the point size closest tothe one desired will most often be used, and in those circumstanceswhere extremely high resolution is required, the font of charactershaving a greater point size may be used. In each case, the charactersmay be displayed at the same size regardless of the point size stored inthe memory of the font selected.

The density of a character formed in the manner described must becontrolled so that each character formed will have substantially thesame energy released per unit area regardless of the point size of thefont selected or of the point size required to be displayed. Thispermits characters of typesetting quality to be displayed withconsistent density at a specified point size regardless of whether thefont selected is a point size smaller than or larger than the displayedcharacter. Differing horizontal and vertical point sizes may be employedin the same displayed'character using the same font, by specifyingdiffering horizontal and vertical sizes on the control record. Thisincreases the variety of the characters which may be displayed from afont.

BRIEF SUMMARY OF THE INVENTION This invention therefore relates to apoint size computation and exposure control device for phototypesettingapparatus utilizing a cathode-ray tube to form lines of characters onthe face thereof. A point size computation circuit compares the pointsize of the font from which the character is selected with the pointsize of the character to be displayed and supplies the appropriatereference voltage to a character generator. An exposure factor controlcircuit determines the duration of the energized beam of energy whichforms each spot making up a character so that each character isdisplayed with uniform density regardless of its point size.

It is an object of this invention to provide an apparatus to formcharacters on an energy responsive surface by directing a beam of energyto a plurality of spots with each character formed having its size anddensity determined solely by instructions from a control recordindependent of the size of the character recorded in a character memory.This is accomplished in the present invention by providing a code in thecharacter memory. This is accomplished in the present invention byproviding a code in the character memory which represents the point sizeof the character stored in the memory. In the preferred embodiment, thiscode is actually proportional to the reciprocal of the character pointsize command obtained from the control record. The products of thesemultiplications are stored in. the horizontal scale register and thevertical scale register, respectively, and represent ratios of controlrecord sizes to character memory sizes. These two scale registerscontrol the voltage output from the horizontal scale digital to analoguecircuit or D/A and a vertical scale D/A each of which supplies areference voltage to the character generator and therefore ultimatelycontrol the spacing between the spots which form the character. Thus,for a particular point size of character to be displayed, the spotsforming the character will have different spacings depending on whetherthe character was selected from a font having the same point size, asmaller point size, or a larger point size. The smaller charactermemory-recorded character will thus be displayed with the spots formingthe character separated a greater distance than a character formed froma font having the same point size.

It is another object of this invention to provide an apparatus forforming characters on an energy responsive surface wherein eachcharacter is formed with the same density regardless of the point sizeof the selected character stored in the character memory or the pointsize of the character to be displayed. In the preferred embodiment ofthe invention, this is accomplished by multiplying the horizontal pointsize and the vertical point size of the character as obtained from thecontrol record and then multiplying that product by the square of thereciprocal of the point size of the character stored in the memory toobtain an exposure factor value. This value is recorded in a registerwhich controls the duration the beam of energy remains on in formingeach spot. Thus, as the character size increases, when using charactersfrom a font or memory having one point size, the spots forming thatcharacter will be separated by proportionately greater distances andtherefore the number of spots within a unit area will decrease. In orderto compensate for the loss of energy within this unit area, the beam isenergized for a longer period of time for each spot thus increasing theenergy by an amount equal to the loss of energy resulting from theseparation of the spots. Conversely, forming two or more characters of aparticular point size using two different fonts will require that thecharacter formed from the font having the most spots per unit area befonned by a beam which remains on for a shorter duration than thosecharacters formed from the font containing the smaller point sizecharacters.

It is a further object of this invention to provide an improvedphototypesetting apparatus wherein characters are formed automaticallyon an energy responsive surface and wherein the starting position of thebeam of energy which forms these characters is automaticallyrepositioned at the completion of each character generation. In thepreferred embodiment of this invention this is accomplished bymultiplying the horizontal point size of the character as determined bythe control record by a signal representing the width of the selectedcharacter from the control memory, and by adding that product, at thecompletion of character generation, into a register which controls thestarting position of the beam of energy, for the next character to begenerated.

Another object of this invention is to provide characters of controlledenergy density, for example bold or faded characters, for emphasis ordeemphasis.

BRIEF DESCRIPTION OF THE DRAWINGS .FIG. l is a simplifiedblock diagramof the phototypesetting system employing a cathode-ray tube to displaylines of typesetting characters;

FIG. 2 is a detailed block diagram of a phototypesetting systememploying means to adjust the size of the character in response toinstructions from a control record and to display these characters atany point size with consistent intensity;

FIG. 3 is a view showing a portion of a character memory including thestart code, a plurality of functional codes which describe the width andpoint size of the character as well as the starting position for thebeam of energy within a character field, and a part of the charactergenerating data;

FIG. 4 is a block diagram of one form of character generator which maybe used with the present invention;

FIG. 5 is a view showing the letter a formed from a series of spots,each spot consistently spaced from an adjacent spot;

FIG. 6 consists of three views showing the portion of the characterwithin the dotted lines in FIG. 5 with FIG. 6a illustrating the spacingbetween the spots when the character is formed at the same point size asthe character recorded in the character memo:y, FIG. 6b illustrating thespacing between the spots when the character is expanded in thehorizontal direction only, and FIG. 60 illustrating the spacing betweenspots when the character is expanded in both the horizontal and verticaldirections;

FIGS. 7a and 7b are block diagrams of another portion of the charactersize circuit with FIG. 741 being a functional diagram showing themathematical computation obtaining values to be stored in the horizontaland vertical scale registers and the exposure factor register, and withFIG. 7b being the actual block diagram of the circuit employed in thepreferred embodiment of this invention to perform this computation;

FIG. 8 is a block diagram of the beam control circuit for maintaining aconsistent density of the characters formed on the cathode-ray tuberegardless of their point size; and

FIGS. 9a and 9b are block diagrams of a portion of the character sizecircuit for computing the distance through which the beam of energy mustmove in order to reposition itself prior to the generation of asubsequent character with FIG. 9a being a block diagram representing themathematical computations which are made to obtain this distance, andwith FIG. 9b being a block diagram of the actual circuit employed in thepreferred embodiment of this invention to perform this computation.

DESCRIPTION OF THE PREFERRED EMBODIMENT Referring now to FIG. 1 which isa simplified block diagram of a cathode-ray tube system for displayingcharacters, a character memory 10, which may be a rotating disc ontowhich the character information is optically recorded, a magnetic discor drum, a core matrix memory, or other similar type of memory device,supplies the necessary information for generating a font of charactersthrough the character selection circuit to the character generatorcircuit 20. Character generating signals representing a selectedcharacter are applied along lines 21 and 22 to the horizontal andvertical.

deflection amplifiers 25 and 26, respectively, which amplifiers in turnmodify the current through deflection coils 27 and 28 surrounding theneck of the cathode-ray tube 30 to deflect the beam to the appropriatelocations and form the characters.

The individual characters are positioned relative to the face of thetube in response to a command from a control circuit 35 which suppliescharacter positioning signals along lines 36 and 37 to the horizontaland vertical amplifiers 25 and 26. A control record 40, containing suchinformation as character selection and interword spacing, is read by atape reader 41 and that information supplied as an input to the buffer42. While the control record 40 is shown in FIG. 1 as a magnetic tape,other types of control means, such as the output from a computer, may beused to select and position the characters and to supply otherfunctional data.

The buffer 42 accepts the information from the control record at itsoptimum readout rate and then transfers that information to the decodercircuit at a rate which can be accepted by the remainder of thephototypesetting system. Different control functions will take differingamounts of time, and even the generation of some characters in somecases will take longer than the generation of other characters. Oneoutput of the decoder circuit is therefore applied as a characterselection signal to the character selection circuit 15 and other outputsare directed to the control circuit 35.

In the preferred embodiment of this invention, the cathoderay tube 30displaying the characters uses electromagnetic deflection means, andboth the character positioning signals and the character generatingsignals are variable voltages applied to the horizontal and verticaldeflection amplifiers 25 and 26 which modify the current flowing throughthe deflection coils 27 and 28. It has been found that supplying boththe character positioning and the character generating signals to thesame amplifier is preferred, especially when generating characters oftypesetting quality. It. is understood, however, that this invention isnot limited to cathode-ray tubes having electromagnetic deflectionmeans.

The magnitudes of the character positioning signals from control circuit35 appearing on lines 36 and 37 are determined by the instructions fromthe control record 40 and also in response to information received fromthe character generator circuit 20. In the present invention, thecathode-ray tube beam is first positioned by the character positioningsignals and thereafter moved to various locations within a characterfield in response to the character generating signals. The charactergenerator circuit 20 also functions to turn the beam of energy on andoff so that it may illuminate the appropriate spots on the tube face asthe beam is moved within a character field, the duration of the beambeing controlled so that all characters formed have the same density.

The character generator circuit 20 supplies the necessary information tothe control circuit 35 to modify the character positioning signals oncethe character generating operation for that character is finished inorder to reposition the starting location of the cathode-ray tube beamfor the next character. The point size and width of the character will,of course, determine the magnitude of the change in the characterpositioning signals. interword spaces supplied by the control record 40also function to modify the character positioning signals so that ajustified line of type may be formed on the cathode-ray tube face. Inthe preferred embodiment of the invention, only a single line ofcharacters at a time appears on the cathode-ray tube.

FIG. 2 is a more complete block diagram showing the general arrangementof the various circuits and structural components which make up thecomplete phototypesetting system. As mentioned previously, the controlrecord is read by the reader 41 which converts the information storedthereon into electrical signals which are directed into the bufferstorage device 42.

The control record 40, among other things, selects the point size of thecharacters to be displayed, the type or style of font to be displayed,interword spaces, the amount of leading, and other similarphototypesetting functional commands. The control record also selectsthe characters to be displayed in sequence, and when used in aphototypesetting system, the control record supplies the properinterword spaces to create justified lines of type.

One output from the decoder 43 is applied to the character generator 20to select the information representing one of the plurality ofcharacters supplied by the character memory 10 for display on thecathode-ray tube 30. Another output from the decoder 43 is applied tothe control circuit 35 where the proper interword spaces for justifiedlines of type are stored in the space memory circuit 45, and where thesize of the character to be displayed is placed into the character sizecircuit 46. Also, leading instructions are stored in the leading controlcircuit 47, and horizontal or vertical rule commands may be applied tothe rule generator 48.

The characters formed on the face of the tube may be photographicallyrecorded by projecting the image of the characters through lens 50 ontophotographic material 5i which is positioned relative to the face of thetube by a motor 52. The motor is controlled by one output of the leadingcontrol circuit 47. The other output of the leading control circuit isconnected to the leading digital to analogue converter or D/A 53 whichpositions the characters vertically with respect to the face of the tubeallowing interpolations between the angular positions of the steppingmotor 52 and permits simultaneous leading of the film and generation ofthe characters In one embodiment of the invention, characters may begenerated by moving a cathode-ray beam from spot to spot and energizingthe beam to illuminate the spots and thus form the character. Thischaracter generator is more completely described in the above mentionedcopending US. application Ser. No. 710,349. In another embodiment, thecharacter generating means may be similar to that described in copendingU.S. application Ser. No. 591,734 where the beam is moved in a rasterpattern and energized only at those spots which form a part of thecharacter.

As mentioned previously, the point size of the character is determinedby an instruction from the control record 40, and when a character isselected for display, a signal representing the width and point size ofthe selected character is supplied by the character generator 20 to thecharacter size circuit 46 on line 55. The character size circuit 46supplies several outputs, one establishing a status of the horizontalscale register or accumulator 56, another establishing a status of thevertical scale register or accumulator 57, a third output is applied online 58 to the beam control circuit 59 and determines the duration oftime that the beam remains on at each spot to control the intensity ofthe .character display, and a fourth output represents the width of thecharacter display which is applied to modify the status of thehorizontal accumulator circuit 60 at the completion of the charactergenerating operation.

By way of illustration, assuming that the cathode-ray tube beam isinitially positioned at the extreme left of the writing surface on thecathode-ray tube face, the character generator circuit 20 will supplythe necessary signals to the horizontal and vertical deflectionamplifiers to form the character, and once character generation has beencompleted, the control circuit 35 will reposition the beam to a newstarting location preparatory to the generation of the next character.Since each character normally has a different width, as for example inFIG. 1 where the letter a has a width value Wu and the letters i and mhave width values Wi and Wm, respectively, the spacing of each characteris determined by a signal from from the character memory which, whenmultiplied by the point size to be displayed as stored in the charactersize circuit 46, results in a digital input which is applied to thehorizontal accumulator 60 after completion of character generation. Thehorizontal accumulator 60 controls other circuits which supply theproper character positioning signals to the horizontal deflectionamplifier.

Referring briefly to the generation of a character, the output of thecharacter generator 20 is applied to the beam positioning meansincluding a horizontal character generating digital to analogue circuitor D/A 62 (H6. 2) and a vertical character generating D/A 63. Thesecircuits convert the digital information supplied by the charactergenerator into analogue voltages which are applied as inputs to thehorizontal and vertical deflection amplifiers 25 and 26. The magnitudesof these analogue voltages are determined in part by reference voltagessupplied to these components by the horizontal scale D/A 65 and thevertical scale D/A 66, respectively.

The reference voltages supplied by the horizontal scale D/A 65 and thevertical scale D/A 66 are determined in part by the horizontal positionof the character to be generated and by the status of the horizontalscale register 56 and the vertical scale register 57, respectively,these registers having previously been set to a digital valuerepresenting the character magnification or reduction by the charactersize circuit 46 under the direction of the control record 40.

The horizontal position of the characters displayed on the tube face isdetermined by the status of the horizontal accumulator 60 consisting of18 registers, the outputs of the 14 most significant of which, in thepreferred embodiment, are connected to three circuit means forpositioning the characters, including an output circuit means or majorhorizontal linear D/A 67, a compensating means or the major horizontalnonlinear WA 68, and the interpolation D/A 69. The outputs from all ofthese D/As are combined and supplied as a voltage input to thehorizontal deflection amplifier 25.

The six registers representing the most significant digits in thehorizontal accumulator 60 control both the output circuit means 67 andthe compensating means 68, while the eight registers representing thenext most significant digits in the accumulator 60 control theinterpolation D/A 69.

FIG. 3 represents a portion of a character memory such as that describedin copending US. application 710,349. A plurality of characters storedin the memory may have associated therewith timing tracks 70 and 71.Each character track 72 includes a unique code identifying the startingposition of the character within the track, a group of codes identifiedas control data, and a plurality of digital codes representing thecharacter generating data.

Nineteen bytes of information, each byte consisting of three bits, areused for the storage of the control data, as shown in FIG. 5, althoughinterspaced at predetermined locations within each byte are fill bitswhich serve no other purpose than to prevent the occurrence of falsestart of section and end of section codes. The control data contains thefollowing codes: a single bit parity code which is used by the controlcircuitry to sense whether the entire group of control data codes isproperly and accurately recorded prior to permitting generation of thecharacter; a 9-bit normalized width code indicating the width of thecharacter which has been recorded in the character generating portion ofthe character track; a 5-bit PREDIPS code which is proportional to thereciprocal of the point size of the recorded character which is referredto by the control circuitry in the spacing of spots which form thecharacter and the duration the beam of energy remains energized at eachspot to permit characters having point sizes different from the recordedpoint size to be formed without significant variations in the density ofthe characters thus formed; two 8-bit codes representing the horizontaland vertical starting coordinates which identify the position of asection of the character with respect to the remaining sections formingthe character; and a 6-bit code indicating the number of sectionsrequired to generate a complete character.

While the control data is shown being recorded in the same track as thecharacter generating data, all or some of this control data may berecorded in a separate track or tracks which could be common to morethan one character track. This is especially true of the PREDIPS codesince most of the characters within a font have the same point size. Infact, the PREDIPS code could be supplied by the control record or byselector switches which would be set when a character memory isinstalled in the apparatus.

Reference is now made to the electrical block diagram in FIG. 4 showingthe character generator used in the above mentioned application 710,349.The output of one of the tracks in the character memory 10 is selectedin response to instructions from the control record by the characterselection circuit 15, shown at the upper left, and that output isapplied to the input shift register 75. A clock system 76 senses theclock tracks 70 and 71 recorded in the character memory and functions tocontrol the sequence of operation of the character generator.

Once character selection has been made, the data is shifted through theinput shift register 75 until a start of section code is detected. Atthe same time, an inhibit is placed on the remainder of the system whichwill remain until character generation is completed. ln this embodimentof the invention, the start of section code is represented by thedigital code 1 110, and is shown at the extreme left in track 72 in FIG.5.

When the first "start of section" code is sensed by the start of sectiondetector 77, all of the registers in the character generating circuitare reset and the control data which follows is entered into appropriateregisters under the direction of the register entry counter 78. Theregister entry counter directs the first bit through a gate 80 to theparity error detector 79 to be recorded therein. The next nine bits arerouted by means of the gate 80 to the normalized width register 81. Thisdate represents the horizontal width of the character recorded in thistrack of the character memory, and when multiplied by the actual pointsize of the character as determined by the control record, will alterthe status of the horizontal accumulator 60 and assist in repositioningthe cathode-ray tube beam after the entire character has been formed.

The next S-bits of data are routed by means of gate 80 into the PREDIPSregister 87 where this information will be used to control the size ofthe character generated and the duration the beam generating thecharacter remains on in each location.

The register entry counter 79 thereafter directs the gate 80 to routethe next 8-bits of control data information into a first reversiblecounter means or the X location up-down counter 83, and the following8-bits of control data information into a second reversible countermeans orthe Y location up-down counter 84. The status of the X and Ylocation up-down counters controls the output of the horizontalcharacter generating deflection D/A 62 and the vertical charactergenerating deflection D/A 63, respectively, and thus the location of thecathode-ray tube beam with respect to the starting position of the beamas determined by the status of the horizontal accumulator 60. Thelocation information stored in the X location up-down counter and the Ylocation up-down counter will normally be different for each of thesections which make up a complete character.

The last 6-bits of data making up the control data is directed by theregister entry counter 79 into the section counter 85. This dataindicates the number of sections required to form a complete character,and when that number of sections has been generated, an end of charactersignal is generated which permits the decoder circuit to resumeoperation.

After all of the control data, which consists of a predetermined numberof bytes, has been stored in the appropriate registers, the remainder ofthe digital information, which comprises the character information, isdecoded by the step direction decoder 86 and gated into the X and Ylocation updown counters to modify the status of these counters by asmuch as one incremental unit at a time, either positive or negative.

By moving the beam only one unit at a time, either as an increment or adecrement in the X and Y directions, or both, a complete character maybe traced on the cathode-ray tube. In the preferred embodiment, thecathode-ray tube beam is energized in response to the clock system onlyafter the beam has been positioned, and the circuit components have hadtime to settle. Using this technique of character generation permitscharacters of typesetting quality to be formed.

After a portion of the character has been created, an end of sectioncode, represented by the digital code 1111, is detected by the end ofsection detector 87 and the character generation ceases momentarily. Theend of section detector 87 applies a pulse to the section counter 85 toreduce its value by one unit, indicating that one section has beencompletely generated. The system therefore recognizes that a specifiednumber of sections remain to be generated and therefore charactergeneration will continue until all the sections making up that characterhave been generated.

Since the control data consists of a predetermined number of digitalbytes, the register entry counter 78 forms a means for counting thesebytes and directing the control data to the appropriate storageregisters, and after the control data is recorded, to gate the characterinformation appearing on the input lines to the character sensingmeans'or step direction decoder 86 and thus to the X and Y locationup-down counters. Those skilled in the art will recognize that othermethods.

of presenting the control data may be used without departing from thescope of this invention.

Reference is now made to FIG. 5 which shows the letter a formed from aseries of spaced apart spots. The spots forming the character areconsistently spaced apart, that is, the distance in the X directionbetween spots remains constant throughout the generation of thecharacter, and the distance in the Y direction also remains constant,although the X and Y distances may or may not be different. Also, eachof the spots within a single character is of the same size, and thespots may either occupy an area so that one spot overlaps an adjacentspot or the spacing may be adjusted so that the area covered by one spotis entirely separate from the area covered by any other spot.

Characters of differing point sizes will contain differing numbers ofspots to form the characters. It is contemplated that for the range oftypesetting characters to be displayed, five different point sizes maybe recorded in the character memory and these expanded or contracted toform characters of intermediate point sizes. In the preferred embodimentof this invention, the character point size is represented in thecharacter font or memory by the PREDIPS code.

FIG. 6a represents the number of spots falling within a unit area whichform that portion of the character outlined in dotted lines in H6. 5when the character is formed at the same point size as it is recorded inthe selected font. In this figure, the X and Y, distances are equal.FIG. 6b shows the same portion of the character with only the horizontal(X point size of the character expanded. in this figure, the number ofspots forming the character within the unit area is reduced. In FIG. 6c,both the horizontal (X and the vertical (Y point size of the characterare expanded to show even greater separation of the spots forming thecharacter within a unit area.

The exposure time .of the spots must be altered to compensate for thedifferences in brightness of the character images for various pointsizes when formed from a single character memory. Thus, when the desiredcharacter size is larger than the stored character size, the characteris expanded, as shown in FIGS. 6b and c. When the character is expanded,the larger image is not as intense because the amount of available lightis spread over a larger area. Therefore, the duration of the exposure ofeach spot must be increased to compensate for the dimmer image.

Unless compensated in some manner, an expanded character will containless energy per unit area than the character stored by a ratio An/Ap,where Art is the normalized character area of the stored character andwhere Ap is the ac tual printed character area. The exposure factor(E.F.), which is a value used to determine the duration of the exposureof the character image to the photographic film or paper, is defined asthe reciprocal of the above area ratio. Thus, E. -=,A2 A

The are of the printed character, Ap, is proportional to the product ofthe horizontal point size l-i times the vertical point size V, thus,Ap=H V. In the preferred embodiment of this invention, the characters ina single font are stored with a predetermined height and width, thus thenormalized character area An may be expressed as a square of a singlenumber, or N where N is the normalized point size. However, whenprinting a character on the face of the cathode-ray tube, the machineoperator has the option of expanding either the width or the height ofthe character independently. The width of the character may be expanded,for example, to provide justified lines of type in conjunction withinterword spacing.

However, neither the character area nor the nonnalized point size isstored in the character memory since more electronic equipment isrequired to divide one number into another than to multiply them. SinceE. F.=Ap/An, or E. F.=(HXV)/N a division is indicated. Therefore, anumber proportional to the reciprocal of the character point size isstored in the character memory.'ln the embodiment of this inventiondescribed herein, the number R stored in the memory is equal to dividedby the normalized point size N. This number R is identified as thePREDIPS number, an acronym meaning Proportional REciprocal Dlsc PointSize. The

number 140 was arbitrarily chosen. based on the fact that fonts ofcharacters having point sizes of 5. 7. l0. l4 and 20 are provided in thecharacter memon This renders the value R a small integer therebyminimizing the number of date stages required to store this number.Thus. the number R is equal to 28, 20, l4. l0. and 7 when representingpoint size values of 5. 7, l0. l4. and 20. respectively Therefore. EF.=(H V) R -il40i- The character size circuit 46 performs themathematical computations necessary in order to present a character ofthe size and density required by the control record 40 independently ofthe size of the character stored in the character memory 10. Forexample.if the control record 40 designates that an 8-point character is to bedisplayed, and the character is selected from a 7-point font. the storedcharacter must be magnified by the ratio 8/7 before exposure on theenergy responsive circuits. The character size circuits includes controlmeans to compute this ratio and to supply the necessary signals to theremainder of the phototypesetting system to cause the spots whichactually form the character to be properly spaced apart to form therequired character.

The character size circuit 46 also includes exposure control means tocompute the area of the character and to adjust the duration of exposureof the beam to the energy responsive circuit with all characters beingformed with the same energy per unit area so that they appear to havethe same density regardless ofexpansion or contraction of the storedcharacter.

Furthermore, the character size circuit 46 includes means to compute thewidth of the displayed character and to provide the signal to repositionthe starting point of the beam of energy automatically in preparationfor the generation of the subsequent character.

Reference is now made to the block diagram of FIGS. 7a and 7b showing aportion of the character size circuit 46, with FIG. 7a representing afunctional block diagram to show the mathematical computations which aremade and with FIG. 7b representing a block diagram of the actualcircuitry being used in the preferred embodiment.

In operation, the character memory I supplies the PREDIPS register 82 inthe character generator circuit with a code representing the number Rwhich is proportional to the reciprocal of the point size of thecharacter stored in the memory. The PREDIPS register 82 is connected toa PREDIPS storage register 90, shown at the lower right in FIG. 7a whichis a l-state shift register containing the number to be used as themultiplicand in the mathematical computations which follow.

Point size information from the control record is supplied through thedecoder to the character size circuit 46 and stored inthe horizontalpoint size memory 91 and in the vertical point size memory 92, bothshown at the top of FIG. 711.

During the interval of time herein designated as step 1, severalmultiplications are carried out simultaneously. For example, in thecircuit 93, the PREDIPS number R is multiplied by the horizontal pointsize H and the product (HXR) is stored in the horizontal scale registeror accumulator 56, in the circuit 94, the PREDIPS number R is multipliedby the vertical point size Hand that produce (VXR) is stored in thevertical scale register or accumulator S7. and in the circuit 95, thehorizontal point size H is multiplied by the vertical point size V andthe product (HXV) temporarily accumulated in the exposure factorregister or accumulator 96. (One further computation must be performedbefore the exposure factor value is completed. This will be described inconnection with step 2).

The horizontal scale register 56 and the vertical scale register 57 areconnected to the horizontal scale D/A and the vertical scale D/A 66 (seeFIG. 2) which modify the reference voltage to the character generatordigital to analogue circuits 62 and 63. Therefore, the spacing betweenadjacent spots which form a character is primarily dependent upon thevalue of the product stored in these two registers. The charactergenerator in the preferred embodiment of this invention mere- Ill lyprovides a digital signal to the character generating D/A circuits 62and 63 to move the beam in increments from one location to anotherlocation without regard to the absolute value of the spacing betweenspots. the spacing being determined by the magnitude of the referencevoltage applied as inputs to these digital to analogue converters. Thus,the number of spots which form any particular character will varydepending upon the point size ofthe character stored in the memory, andfor characters generated at the point size of the selected font, thespots forming those characters will be placed the same distance apart.In other words, the spots forming a 5-point size character from a5-point font will be the same distance apart as the spots forming a20-point character generated from a 20- point font.

During step 2, the product (I-IXV) is multiplied in the circuit 97 bythe square of the PREDIPS number, or R from the squaring circuit 98.This product is also stored in the exposure factor register 96. As willbe explained in connection with FIG. 9, a decoder circuit connected tothe output of the exposure factor register 96 decodes the value storedtherein, and one of seven different exposure times is selected in thebeam control circuit 59. Of course, this computation occurs prior to thegeneration of the character since the character is formed by moving thebeam incrementally from spot to spot and exposing the beam for the timedetermined by the beam control circuit 59.

All computations in the character size circuit 46 are multiplications,for the reason stated above, and since the numbers used are in binaryform, a binary multiplication technique is used.

The following illustrates the binary multiplication technique ofmultiplying the decimal number I09X10:

In the binary multiplication system, the multiplicand 109 is multipliedby the multiplier 10 by computing the partial product of each digit ofthe multiplier separately and then summing the individual partialproducts. The multiplication in the binary system is somewhat simplerthan multiplication in the decimal system since the digits in themultiplier are only ones and zeros. Therefore, the partial product iseither zero or a number which is the same as the multiplicand, exceptthe number is shifted to the left by the appropriate number of binaryplaces. Hence, the first partial product (a) in in the example above iszero since the 2 digit of the multiplier is zero. The second partialproduct (b) is the same number as the multiplicand because the digit inthe 2 position of the multiplier is a one, except it is shifted to theleft one place. The third partial product (c) is zero, and the fourthpartial product (d) is again the same number as the multiplicand exceptshifted to the left three places.

To multiply a binary number by machine requires only that the multiplierbe examined one digit at a time, the least significant digit beingexamined first in this example, and either adding or not adding themultiplicand into an accumulator depending on whether the multiplierbeing examined is a one or a zero. This examination is performed bysensing the contents of the least significant digit stage of theregister storing the multiplier, and then shifting the multiplier withinthe register to the right one digit at a time. The multiplicand, at thesame time, is shifted to the left one digit at a time, and if themultiplier digit under examination is a one, the weighted multiplicandis added to an accumulator. In this embodiment of the invention, theaccumulators also serve as output registers into which the partialproducts are added as they are computed.

Reference is now made to FIG 7b which 15 a block diagram of the actualcircuitry employed In the preferred embodiment to calculate the numbersto be stored in the horizontal scale register 56. the vertical scaleregister 57, and the exposure fac tor register 96. The data stored inthe horizontal point size memory 91 and in the vertical point sizememory 92 IS placed into these memory circuits from the control record40 through the decoder circuit 43 and retained throughout the generationof several characters. or until the character point size changes. Bothof these memory circuits are 6-stage ring shift registers havingarecirculating path so that the data stored in these memory circuits maybe reused as the multiplier in the computations HXR and VXR which occurduring the generation of each character of the same point size.

The PREDIPS register 90 is a lO-stage register which stores themultiplicand in these computations. Therefore, to obtain the product ofthe multiplication HXR, the first or least significant digit in thehorizontal point size memory 91 is examined. and if this digit is abinary l, the data in the PREDIPS register 90 is entered into thehorizontal scale register 56 through the full adder circuit 930.Thereafter, the data in the horizontal point size memory 91 is shiftedto the right one place, and the data in the PREDlPS register 90 isshifted to the left one place. The second digit in the horizontal pointsize memory is then inspected, and if it is also a binary 1, then theshifted data from the PREDlPS register 90 is again entered into thehorizontal scale register through the adder circuit 93a. This process isrepeated until all the partial products have been computed. Themultiplication VXR occurs simultaneously with the multiplication HXR asdescribed above.

Therefore, at the completion ofthe multiplication, the numbers stored inthe horizontal and vertical point size memories have been recirculatedto their original positions to await the computation sequence for thenext character. Accordingly, the horizontal and vertical scale registers56 and 57 contain the products of these multipl cations and modify thereference voltage to the character generator circuit through thehorizontal and vertical scale digital to analogue circuits 65 and 66.This computation occurs prior to the actual generation of the characteron the face of the cathode-ray tube.

The computation of HXV is performed using the number H in the horizontalpoint size memory 91 as the multiplier and using an auxiliary verticalpoint size memory 920 to store the multiplicand V. An auxiliary memberis used since the multiplicand is shifted to the left, and added intothe exposure factor register 96 through the adder circuit 95a when thedigit being inspected in the multiplier is a binaryl. The same number Vis being used as a multiplier in the computation VXR, as indicatedabove. The number V is entered into the auxiliary point size memory fromthe vertical point size memory 92 for each separate computation,therefore the auxiliary point size memory 920 need not be arecirculating memory.

The computation of R is performed in the decoder circuit 980. Thiscomputation merely causes the number stored in the exposure factorregister 96 to be shifted to the left one or more places. Each shift tothe left corresponds to multiplication by a power of 2. In the preferredembodiment, only 5 different values of R are provided since fonts havingonly 5 different point sizes are available from the character memory 10.With reference to the table below, the logarithm to the base 2 value ofRl50 is either 0, 1,2, 3, or 4. Therefore, merely shifting the contents(HXV) in the exposure factor register to the left the appropriate numberof steps will accomplish the multiplication (HXV)XR.

The value of R is approximated, as shown in parenthesis in the tablebelow, to facilitate the mathematical computation. Since theapproximated'value of R is within 2 percent of the actual value, theresults of the computation are well within the tolerances necessary forprinting characters of typesetting quality.

" Logarithm Stored muster point in 1?: 1 N H- 50 50 5 2s .b 1(800; 1n 4T '20 400(400) K 3 l l4 196(200) 4 .2 14 ll) (1001 :3 1 20 T 1 0Referring now to the block diagram of the beam control circuit 59 inFIG. 8, the character generator 20 supplies signals to initiate theenergization of the beam of the cathode-ray tube for each spot formingthe character. Since the duration that the beam remains energized isdetermined by the number of spots within a unit area, all characters areformed at the same energy per unit area thus giving the characters auniform density.

The number in the exposure factor register 96 is decoded by the circuit100 which selects one of 7-pulse width generators 10la-101g, each ofwhich is a simple monostable flip-flop or single shot multivibratortriggered by the output of the character generator 20. All seven ofthese generators 101 are connected to a seven input OR gate 102 and itsoutput signal applied through the driver circuit 103 and pulse amplifiercircuit 104 to the control elements of cathode-ray tube 30.

At this point, there is a waiting time during which the character sizecircuit 46 is dormant while the character generating routine forms thecharacter on the face of the cathode-ray tube 30. After the characterhas been completely formed, the signal from the character generator 20is supplied to the character size circuit 46 to initiate step 3.

The contents of the horizontal scale register 56, the vertical scaleregister 57, and the exposure factor register 96 are erased in step 3 bysetting all of these registers to zero. The normalized character widthW, obtained from the character memory 20 and stored in the normalizedcharacter width register 105 (FIG. 9a) is multiplied in the circuit 106by the horizontal point size H contained in the horizontal point sizememory 91, and this product (HXW) is entered into the horizontalaccumulator 60 through gate 107 upon an entry command from the charactergenerator 20 at the completion of the character generating operation.

FIG. 9b is a block diagram of the actual circuit used to perform thismultiplication operation. The number W in the normalized character widthregister 81 in the character generator is the multiplicand while thenumber in the horizontal point size memory 91 is the multiplier. Thenumber in the normalized character 81 circuit is entered into anauxiliary shift register 105a at the beginning of the charactergenerating operation, and at the conclusion of that function, thisauxiliary character width register adds the partial products through theselector gate circuit 111 and the adder circuit 112 into the horizontalaccumulator 60, in the manner previously described. Thus, the status ofthe horizontal accumulator 60 is changed by an amount equal to the spaceactually occupied by the character just generated to establish the nextstarting location of the beam.

A character generating system has been described wherein characters fromone of several fonts, each font having differing point sizes, may beselected and displayed at any point size within the range of theapparatus. The apparatus computes the spacing required between the spotsof energy forming each character and causes an appropriate voltage to besupplied to a character generator. The density of each character ismaintained uniform by controlling the duration each spot of energyremains energized.

While the forms of apparatus herein described constitutes preferredembodiments of the invention, it is to be understood that the inventionis not limited to those precise forms of apparatus, and that changes maybe made therein without departing from the scope of the invention whichis defined in the appended claims.

We claim 1. Apparatus for displaying characters on an energy responsivesurface in response to commands from a control record containingcharacter selection and point size instructions including;

character memory means containing at least a font of characterssupplying first signals representing the location within a characterfield of each ofa plurality ofspots which define each character on theenergy responsive surface; means supplying second signals representingthe point size of the characters stored within said character memory;means responsive to the control record for selecting one of thecharacters in said character memory means to be displayed;

beam positioning means responsive to said first signals representing theselected character for positioning the beam of energy to a plurality ofspots in a sequence on the energy responsive surface, as determined bysaid character memory means; and

control means responsive to the point size instructions from the controlrecord and to said second signals for supplying a reference signal ofsuch a magnitude to said beam positioning means that the spacing betweenadjacent spots forming the character and therefore the actual size ofthe character displayed on the energy responsive surface will be inresponse to instructions from the control record and independent of thepoint size of the character stored in said character memory means.

2. The apparatus as set forth in claim 1 wherein said second signals arerecorded in said character memory means.

3. The apparatus as set forth in claim 1 wherein said control meanscomprises:

first storage means for recording the point size instructions from thecontrol record;

second storage means for recording said second signals representing thepoint size of the selected character stored in said character memorymeans;

means for multiplying the point size instructions in said first storagemeans by the character point size stored in said second storage means;

third storage means connected to said multiplying means for recordingthe product of said multiplication; and

means for supplying a reference voltage to said beam positioning meanshaving a magnitude proportional to the status of said third storagemeans to control the spacing between adjacent spots forming thecharacter on said energy responsive surface.

4. The apparatus of claim 3 wherein said first storage means includes ahorizontal point size memory and a vertical point size memory, both saidpoint size memories being responsive to and recording the point sizeinstructions from the control record; and

wherein said third storage means includes a horizontal scale registerand a vertical scale register, said registers recording the product ofthe multiplication of the horizontal point size and the vertical pointsize instructions from the control record by the point size of theselected character as recorded in said second storage means.

5. A hototypesetting apparatus for displaying characters on an energyresponsive surface in response to commands from a control recordcontaining character selection and point size instructions, saidapparatus including a character memory means containing at least a fontof characters for supplying first signals representing the location ofeach of a plurality of spots within a character field which define eachcharacter on the energy responsive surface;

means responsive to the control record for selecting one of thecharacters in said character memory means to be displayed:

means supplying second signals representing the point size of thecharacters stored in each font;

means for comparing the point size instructions from the control recordwith said second signals; and

exposure control means responsive to said comparing means forcontrolling the duration each of said plurality of spots remainsenergized on said energy responsive sur face so that each character isformed with the same energy per unit area independently of the spacingbetween the spots forming that character.

6. The apparatus as defined in claim 5 wherein said second signals areproportional to the reciprocal of the area of the selected character.wherein said point size instructions from the control record includeboth the horizontal point size and the vertical point size of thecharacter to be displayed, and wherein said comparing means includes;

first means multiplying the horizontal point size times the verticalpoint size to obtain a first product representing the area of thecharacter to be displayed;

means for squaring the number representing the reciprocal of the area ofthe selected character; and

second means for multiplying said first product times said squaredreciprocal to obtain a second product representing the ratio between thepoint size of the character to be displayed and its point size asrecorded in said character memory means.

7. The apparatus as defined in claim 6 wherein said means squaring thenumber representing the area of said selected character includes adecoder sensing said second signals for producing an output which isequivalent to the square of said number.

8. The apparatus as defined in claim 5 wherein said sure control meansincludes a plurality of single shot multivibrators, each having adifferent pulse width to control the duration each of said plurality ofspots remains energized, said multivibrators being triggered by clocksignals generated in response to data from said character memory means;

means responsive to the product of said second multiplying means forselecting one of said plurality of single shot multivibrators; and

means connecting the output of the selected one of said single shotmultivibrators to energize a beam of energy to form each of said spotfor a time duration such that all characters are formed having the sameenergy per unit area.

9. Apparatus for displaying characters on an energy responsive surfacein response to commands from a control record containing characterselection, horizontal point size, and vertical point size instructionsfor the character to be displayed, said apparatus including a charactermemory means containing at least a font of characters for supplyingsignals representing the location of each of a plurality of spots withina character field which define each character on the energy responsivesurface;

means supplying signals representing the width of each character withinsaid character memory means;

means responsive to the control record for selecting one of thecharacters in said character memory means to be displayed;

means for positioning each character field on the energy responsivesurface;

means for multiplying the horizontal point size of the character to bedisplayed times said signals representing the width of the characterselected for display; and

means entering the product from said multiplying means into said meanspositioning each character field on the energy responsive surface at thecompletion of character generation so that a character subsequentlydisplayed is properly spaced from the character previously displayed.

10. Phototypesetting apparatus for displaying characters on an energyresponsive circuit in response to commands from a control recordcontaining character selection and point size instructions, saidapparatus including:

character memory means containing at least a font of characterssupplying first signals representing the location within a characterfield of each of a plurality of spots expowhich define each character onthe energy responsive surface;

means supplying second signals representing the point size ofthecharacter stored within said character memory.

means responsive to the control record for selecting one of thecharacters in said character memory means to be displayed;

beam positioning means responsive to said first signal representing theselected character for positioning the beam of energy to a plurality ofspots in a sequence on the energy responsive surface as determined bysaid character memory means;

control means responsive to the point size instruction from the controlrecord and to said second signalsfor supplying a reference voltage ofsuch a magnitude to said beam positioning means that the spacing betweenadjacent spots forming the selected character and therefore the actualsize of the character displayed on the energy responsive surface will bein response to instructions from the control record and independent ofthe point size of the character stored in said character memory means;and

exposure control means responsive to the point size instructions fromthe control record and to said secondsignals for controlling theduration each of said plurality of spots remains energized on the energyresponsive surface so that each character is formed with the same energyper unit area independently of the spacing between the spots formingthat character.

